Bidirectional pre- and post- processor conduit through a bidirectional printing data stream

ABSTRACT

A system and method for communicating commands and data to a printer and pre- and post-processors through a link using different protocols. In the exemplary embodiment, UP 3 I finishing instructions for a print file are specified in a MO:DCA Form Definition and processed by a print server on a host computer. Print commands are generated by the host computer and transmitted to a printer using the Intelligent Printer Data Stream (IPDS) Architecture. The processor within the printer receives and processes the UP 3 I pre- and post-processor commands received via the IPDS communications link and generates commands on a separate communications channel according to the Universal Printer Pre- and Post-Processing Interface (UP 3 I) for transmission to the pre- and post-processors. Status reported by the pre- and post-processors according to the UP 3 I™ specification are received by the printer and transmitted to the host computer.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to controlling printing equipment, andmore specifically to a system and method for communicating commands tocomputer control printing and paper handling equipment.

2. Description of Related Art

High volume, high capacity printing systems have been developed thatallow a variety of types of processing to be performed to the paper orother media upon which data is printed. An example of such printingsystem are completely automated systems that produce paper bills to bemailed to customers of utilities or other entities that mail a largenumber of bills. These high speed printing systems are able to producefrom several hundred to over one thousand pages per minute. Theseprinting systems further have pre-processing and post-processingequipment to handle and further prepare the paper or other media that isprocessed by these printing systems or by successive systems (such as anoff-line inserter). Examples of such pre- and post-processing equipmentinclude machines that cut, fold, perforate, staple, edge stitch,post-print, unwind paper, insert sheets from the printer or otherpaper-supply sources into a stack of printer output and stuff assembledpackages of paper into envelopes for mailing.

The pre- and post-processing equipment, which are generically referredto herein as ancillary printing equipment, use a variety of physical andlogical connection methods. Each interface between and among thisequipment as well as with a printing server is typically designedespecially for the devices being connected. This has resulted in the useof a large number of interfaces, both the physical interface as well asthe software interface used to command the printing system components,that must be supported by manufacturers. Many of these interfaces arealso proprietary to the manufacturer of a particular piece of equipment.This has created difficulty in efficiently integrating or replacingprinting system components, especially when mixing components fromdifferent manufacturers.

SUMMARY OF THE INVENTION

The complexity of high speed printing systems is increasing as a greatervariety of pre- and post-processing equipment is becoming available froman increasing number of sources. In view of these drawbacks, it is anobject of the present invention to remove the above-mentioned drawbacksand to facilitate the integration and replacement of printing systemcomponents of different models and manufacturers into existing systemsby providing an efficient system and method that allows interconnectionof high speed printers, pre- and post-processing printing equipment andthe printer servers.

One embodiment of the present invention provides a method ofcommunicating processing data to ancillary printing processors. Thismethod establishes a first communications link from a data source to aprinter that carries printer control data in a first protocol and alsoestablishes a second communications link from the data source to atleast one ancillary printing processor. This second communications linkis at least partially made up of the first communications link.Processing data is then communicated between the data source and the atleast one ancillary printing processor by a second protocol thatcontains data that is communicated by the second communications link.The processing data is communicated according to a second protocol thatis carried within the first protocol.

Another embodiment of the present invention provides a system forcommunicating processing data to ancillary printing processors. Thissystem has a first communications link that carries printer control datain a first protocol from a data source to a printer and a secondcommunications link from the data source to at least one ancillaryprinting processor. At least part of the second communications link ismade up of the first communications link and the second communicationslink carries data that conforms to a second protocol. The system alsohas a host/server for generating printing and finishing data fortransmission over the first communications link and the secondcommunications link.

Other objects, features, and advantages of the present invention willbecome apparent from the following detailed description. It should beunderstood, however, that the detailed description and specificexamples, while indicating preferred embodiments of the presentinvention, are given by way of illustration only and variousmodifications may naturally be performed without deviating from thepresent invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram of a printing equipment communicationsarchitecture in accordance with an exemplary embodiment of the presentinvention;

FIG. 2 is a schematic diagram of an alternative printing equipmentcommunications architecture in accordance with a preferred embodiment ofthe present invention;

FIG. 3 is a process flow diagram for communicating a pre-processing orpost-processing equipment command in accordance with an exemplaryembodiment of the present invention; and

FIG. 4 is a processing flow diagram for communicating a pre-processingor post-processing equipment status message in accordance with anexemplary embodiment of the present invention.

FIG. 5 is an example showing several finishing operations in the contextof an IPDS data stream.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

Preferred embodiments of the present invention will be described indetail hereinbelow with reference to the attached drawings.

A printing equipment configuration 100 of an exemplary embodiment of thepresent invention is illustrated in FIG. 1. The printing equipmentconfiguration 100 of the exemplary embodiment has a host/server 102 thatgenerates data files that define documents to print. The exemplaryembodiment includes one or more workstations 114 that are used bygraphic designers or users with other skills to define part or all ofthe document to print. Other embodiments utilize other processingarchitectures to allow the definition of the documents and packages toprint. The printing equipment configuration 100 also include high speed,high volume printers that handle and produce several hundred to over onethousand pages per minute. This printing equipment configuration 100 hasa printing device 106 that performs the primary printing task of placingthe specified image on a page of paper. The printing device 106 of theexemplary embodiment receives data defining the documents to print fromthe host/server 102. The data generated by the workstation 114 andreceived by the host/server 102 of the exemplary embodiment conforms tothe MO:DCA architecture. The data generated by the host/server 102 andreceived by the printing device 106 of the exemplary embodiment conformsto the IPDS architecture. The IPDS architecture is defined in theIntelligent Printer Data Stream Reference, IBM Publication#S544-3417-05, Sixth Edition dated March 1996). The MO:DCA architectureis defined in the Mixed Object Document content Architecture Reference,IBM Publication #SC31-6802-05, Sixth Edition, Dated April 2001. Theentire contents and teachings of the Intelligent Printer Data StreamReference and the Mixed Object Document Architecture Reference arehereby incorporated herein by reference.

The printing device 106 (which might contain more than one markingengine) processes paper that is transferred between the printing device106 and pre-processing devices 104 as well as post-processing devices108. Paper is transferred into and out of the printing device 106 viathe pre-processing device paper path 120 and the post-processing devicepaper path 122. Embodiments of the present invention are able to operatewith one or more pre-processing device within the pre-processing devices104 and/or one or more post-processing device as part of thepost-processing devices 108.

The pre-processing devices 104 and the post-processing devices 108 ofthe exemplary embodiment accept commands that conform to a protocol thatis part of the Universal Printer Pre- and Post-Processing Interface(UP³I). The UP³I is defined in the UP³I™ Specification, produced by theUP Core Group, the entire contents and teachings of which is herebyincorporated herein by reference. The printing device 106,pre-processing devices 104 and post-processing devices 108 of theexemplary embodiment of the present invention are electrically connectedvia a Universal Printer Pre- and Post-Processing Interface (UP³I) bus110. The UP³I bus 110 of the exemplary embodiment includes an electricalinterface that conforms to the IEEE 1394 standard defined by theInstitute of Electrical and Electronics Engineers (IEEE) of Piscataway,N.J. The UP³I bus 110 of the exemplary embodiment conveys commands forpre-processing and post-processing operations that are to be performedby the pre-processing devices 104 and the post-processing devices 108,respectively. The commands communicated via the UP³I bus 110 conform tothe UP³I protocol.

A print file containing documents in MO:DCA format is generated onworkstation 114 and sent to host/server 102 for printing. The printrequest is accompanied by a job ticket, such as a MO:DCA FormDefinition, that specifies finishing operations to be performed on theprint file. In the exemplary embodiment, the finishing operations arespecified in a Form Definition using UP³I commands and parameters. Thehost/server 102 of the exemplary embodiment accepts the print file andjob ticket, and derives a composite data stream that consists of an IPDSdata stream and an encapsulated UP³I data stream that contains theprinting finishing commands for the print file.

The printing device 106 of the exemplary embodiment contains an internalprinter controller that receives and processes commands sent by thehost/server 102. The internal printer controller of the exemplaryembodiment accepts data and commands from the host/server 102 via theIPDS connection 112 and then controls the print engine within theprinting device 106 so as to generate the required printed output. Theinternal controller of the exemplary embodiment further receives thepre-processing and post-processing commands, which are referred tocollectively as finishing commands, that are transmitted by thehost/server 102 and transmits the associated UP³I commands over the UP³Ibus 110 to the pre-processing devices 104 and/or post-processing devices108. The internal controller of the printing device 106 further monitorsthe UP³I bus 110 for status information that is generated by devices onthe UP³I bus 110, including the pre-processing devices 104 andpost-processing devices 108. The status information transmitted by thepre-processing devices 104 and/or the post-processing devices 108conforms to the UP³I protocol. Upon receipt of status information overthe UP³I bus 110, the internal controller of the printing device 106 ofthe exemplary embodiment generates a corresponding IPDS acknowledgmentfor transmission over the IPDS bus 112 to the host/server 102. Thestatus information can contain operational characteristics andcapabilities as well as error information.

The structures used in the MO:DCA Form Definition to carry finishingcommands and parameters conform to the MO:DCA architecture, while theactual finishing commands and parameters conform to the UP³I™Specification. This allows continued use of software that generates andprocesses MO:DCA constructs.

The commands issued by the host/server 102 in the exemplary embodimentconform to the IPDS architecture. This allows continued use of softwareand processing procedures that produce IPDS commands. The IPDS protocolused by the host/server 102 of the exemplary embodiment has beenmodified to include new IPDS commands that allow communication of UP³Ipre-processing and post-processing commands in order to control ormonitor the pre-processing devices 104 and/or the post-processingdevices 108. The exemplary embodiments of the present inventionadvantageously allow existing protocols to be generated by theworkstation 114 and the host/server 102 although pre-processing devices104 and post-processing devices 108 require a different protocol. Theexemplary embodiments also allow the sharing of device-capabilitiesdescription, error recovery, and page tracking information between theUP³I portion of the system and the AFP/IPDS portion of the system. Theprinting device 106 of the exemplary embodiment interprets thesepre-processing and post-processing commands and performs communicationsvia the UP³I bus 110 that corresponds to pre-processing andpost-processing commands that are contained within received IPDScommands.

Alternative embodiments of the present invention utilize pre-processingdevices 104 and post-processing devices 108 that do not directly acceptUP³I commands. These pre- and post-processing devices are eitherphysically incorporated within the same unit as the printing device 106,or they are connected to the printing device 106 via a non-UP³Iinterface. The internal printer controller in these embodimentsprocesses the UP³I data that is communicated via the IPDS bus 112 andcommunicates the correct commands to these other pre- andpost-processing devices. It is within the spirit and scope of thisinvention to support a variety of interconnections between the printingdevice 106 and the pre-processing devices 104 and post processingdevices 108. Embodiments of the present invention further use otherprotocols, aside from the IPDS and UP³I protocols, to control all orsome of the pre-processing devices 104, post processing devices 108 andthe printing device 106.

An exemplary expanded printing equipment configuration 200 isillustrated in FIG. 2. This expanded printing equipment configuration200 includes the same components of the previous exemplary printingequipment configuration 100 with the addition of a UP³I manager 202. TheUP³I manager 202 is connected to the UP³I bus 110 to monitor datatransmitted by those devices onto the UP³I bus 110. This allows directmonitoring of the UP³I data generated by the devices.

An exemplary command communications processing flow 300 is illustratedin FIG. 3. The processing begins, at step 301, where the host/serverreceives a print file along with a Form Definition that specifies UP³Ifinishing operations for the print file. Processing continues, at step302, by communicating a command via the IPDS data link from thehost/server 102 to the printing device 106. The printing device 106 ofthe exemplary embodiment receives, at step 304, the command. Theprocessor within the printing device 106 examines the received commandand determines, at step 306, whether the received command is a printercommand or a pre-processor or post-processor command. If the command isa printer command, the command is processed, at step 308. An example ofa printer command is a command that requires configuration of the printengine within the printing device 106. If the command is not a printercommand, the processor within the printing device 106 of the exemplaryembodiment generates, the associated UP³I command and transmits, at step310, that command. In the normal course of printer operations or inresponse to specific IPDS commands, UP³I commands might also begenerated by printing device 106.

An exemplary status communications processing flow 400 is illustrated inFIG. 4. This status communications processing flow begins by waiting, atstep 401, for a status message to be communicated via the UP³I bus 110.The processing then receives, at step 402, the status message at theprinting device 106. The processor within the status printing device 106generates the associated IPDS message and transmits, at step 404, thatmessage to the host/server 102. The processing then continues bywaiting, at step 401, for a further status message to be communicatedvia the UP³I bus 110.

Protocol Extensions to Carry UP³I Protocol Data

An exemplary embodiments of the example of the present invention operateby introducing new commands to the IPDS protocol as well as the MO:DCAarchitecture. These protocols define rules for command triplets and selfdefining fields (SDFs). The Tupels discussed below are defined by theUP³I specification to be ordered chains of paper sequence IDs. The IPDSspecification defines the commands discussed below that begin with theletters XOH and XOA.

The added command data, which include new commands and added values toexisting commands, are defined below:

Extensions for the MO:DCA Medium Finishing Control (MFC) StructuredField

The MFC structured field is specified in a Form Definition to specifyfinishing operations that are to be applied to the print file. Suchoperations are currently specified in a Finishing Operation (X‘85’)triplet. The MFC structured field is being extended to allow UP³Ifinishing operations to be specified for the print file. This is done byallowing a new triplet to be used on the MFC—the UP³I FinishingOperation (X‘8E’) triplet, which contains the UP³I Form FinishingOperating (X‘03’) triplet that is defined by the UP³I™ Specification.

Extensions for the IPDS Sense-Type-and-Model Command UP³I Property Pairfor IPDS Sense Type and Model (STM)

Data Value returned within IPDS STM reply: X‘F101’

Meaning of Data Value: A printer returning this data value within an STMreply processes UP³I finishing extensions to the IPDS interface. Anexisting UP³I interface is reported with this data value.

A printer that reports this data value via the IPDS interface supportsthe UP³I related IPDS commands, including:

-   XOH-OPC UP³I Tupel SDF with the UP³I Finishing Device Entry-   XOH-OPC UP³I Paper Input Media SDF-   UP³I Finishing Operation Triplet in the XOH-DGB and the AFO commands-   XOA Discard Unstacked Pages-   UP³I Exceptions including Sense Format 8 and Set Recovery.    Note: Indicating UP³I support does not necessarily mean that a UP³I    device is available in the print system. This is indicated in an    IPDS Obtain Printer Characteristics (OPC) reply.    Data Value returned within IPDS STM reply: X‘80F5’    Meaning of Data Value: XOA-Discard Unstacked Pages command is    supported.    A printer that reports this property pair supports the XOA-Discard    Unstacked Pages command.

Extensions for the XOH-OPC IPDS Command

The UP³I Tupel Self Defining Field (SDF)

This SDF reports the physical order and properties of the UP³I devicesconnected to the print system.

Data Field Definitions of the UP³I Tupel SDF:

Bytes 0-1 of the UP³I Tupel SDF contain the SDF length field. These twobytes form a data value of type unsigned binary and is valid with avalue greater or equal to 9. This length value includes the SDF lengthfield itself.

Bytes 2-3 contain the hexadecimal value 0019, which is the UP³I TupelSDF ID value.

Bytes 4-5 contain the UP³I Tupel ID and are able to have a value ofhexadecimal 0001 through FFFF. A value of 0000 is reserved.

The remaining bytes contain finishing device information with one ormore UP³I finishing device entries.

One UP³I tupel SDF reports the UP³I devices that define one tupel. Thereare as many UP³I tupel SDFs in an OPC as there are tupels in an UP³Iprocessing line. The paper flow within one tupel is described by thepaper Sequence IDs, the devices are ordered ascending. The paper movesfrom the device with the lowest paper sequence ID to the device with thenext higher one.

UP³I Finishing Device Entry

The UP³I finishing device entries are the data that are contained withinthe last field of the above SDF. Each of these entries has the followingformat:

Data Definition of the UP³I Finishing Device Entry:

Byte 0 of this entry is the entry length field that contains the length(i.e., number of bytes) of this entry, including this field. This fieldis able to contain a value between hexadecimal 03 and FF.

Byte 1 of this entry contains the UP³I finishing device entry ID, whichis a value of 01.

Byte 2 contains the paper sequence ID of the finishing device associatedwith this entry. This byte is able to contain any value between 0 andhexadecimal FF.

The remaining bytes of this entry contain one or more UP³I SDF tripletsrelated to device with the paper sequence ID above.

One UP³I finishing device entry reports the characteristics of one UP³Idevice. Several UP³I SDF triplets may be included in one UP³I Tupel SDF.All these entries describe one UP³I device.

The following UP³I Self Defining Field (SDF) Triplets, which aredescribed in the UP³I™ Specification, are supported by the UP³IFinishing device entry:

UP³I Version Triplet

Device Type Triplet

Self Defining Field Triplet

Paper Input Format Triplet

Paper Output Format Triplet

UP³I Product ID Triplet

UP³I Paper Input Media SDF

This SDF reports the media attributes of all media that exist in theUP³I line.

Description of the UP³I Paper Input Media SDF

Bytes 0 through 1 of this SDF are of type unsigned binary and containthe Length field. This field is able to contain a value betweenhexadecimal 0005 and FFFF. This field contains the length of this SDF,including this field itself.

Bytes 2 through 3 contain the UP³I Paper Input Media SDF ID field. Thisfield contains the hexadecimal value 001A, which indicates the UP³IPaper Input Media SDF ID.

Byte 4 contains the Media Source ID field. This field is able to containhexadecimal values between 00 and FF. This field contains the MediaSource ID as defined in OPC Printable Area SDF communicated under theIPDS protocol.

The remaining bytes contain the UP³I Paper Input Media Triplet with itsSub Triplets, as defined in the UP³I specification; extra bytes beyondthe UP³I-defined bytes are ignored.

The relation between the Printable-Area SDF and this UP³I MediaAttribute SDF is based upon:

-   -   Media Source ID (Byte 4) of the Printable-Area SDF and by the    -   Input Media ID (Byte 3) of the UP³I Paper Input Media Triplet.        For every media that is available in the UP³I line there may        exist a Paper Input Media Triplet with its Sub Triplets.

The UP³I paper input media triplet and its sub triplets are described inthe UP³I™ specification.

The UP³I paper input media triplet is optional in the UP³Ispecification; when the length of this SDF is only five bytes, there isno data available. The Paper Input Media Triplet supports the followingsub triplets:

Paper Input Media Name Sub Triplet

Paper Input Media Coating Sub Triplet

Paper Input Media Brightness Sub Triplet

Paper Input Media Color Sub Triplet

Paper Input Media Imagable Side Sub Triplet

Paper Input Media Color Name Sub Triplet

Paper Input Media Set Count Sub Triplet

Paper Input Media Opacity Sub Triplet

Paper Input Media Pre Printed Sub Triplet

Paper Input Media Recycled Sub Triplet

Paper Input Media Roll Diameter Sub Triplet

Paper Input Media Thickness Sub Triplet

Paper Input Media User Media Type Sub Triplet

Paper Input Media Weight Sub Triplet

Note: The Media Source ID allows the host program to associate the MediaAttributes contained in the UP³I Input Media Triplet with the MediaSources (Input Bins) specified in the OPC-Printable Area-SDF.

The direction of the width and length parameters in the paper inputmedia triplet refer (different than it is in IPDS) to the paper movementdirection.

The units for distance parameters used in the UP³I specification aredifferent from those in the IPDS specification. UP³I uses milli-points,one milli-point is 1/72000 inch.

However, these values are not relevant for the host software, becausethey are also defined in the OPC-Printable Area-SDF (i.e. Length/Widthof Media Presentation space, Offset/Extend of Printable Area, some Mediacharacteristics). The host program uses the OPC-Printable Area-SDF tocontrol its presentation process. The IPDS controller together with theUP³I Manager guarantee that the information contained in both SDFs isconsistent.

Extensions for XOH-DGB and AFO (Apply Finishing Operation)

The IPDS format has its own finishing operating triplet (X‘85’), but thenewly added UP³I form finishing operating triplet, which is carried bythe Medium Finishing Control (MFC) structured field in the MO:DCA FormDefinition, allows UP³I command data to be transmitted via the IPDS databus 112 so that the printing device 106 is able to transmit thecorresponding UP³I command via the UP³I bus 110.

UP³I Finishing Operation Triplet Description of the UP³I FinishingOperation Triplet Data Fields

Byte 0 of this triplet is an unsigned binary data element containing theLength field. This byte is able to have a value between hexadecimal 05and FE. This byte contains the length of this triplet, including thisfield itself.

Byte 1 contains the Triplet ID field. This byte contains the hexadecimalvalue 8E, which identifies the UP³I Finishing Operation triplet.

Bytes 2 and 3 are reserved.

The remaining bytes contain data representing the UP³I Form FinishingOperation Triplet as defined in the UP³I™ specification; this fieldcontains bytes 4 through the end of the UP³I Form Finishing Operationtriplet; extra bytes beyond the UP³I-defined bytes are ignored.

A restriction of the exemplary embodiment of the present invention isthat the finishing operation types “Paper Input/Page interpose” arerejected in the IPDS triplet with hexadecimal ID value 8E. The existingIPDS interpose functionality is used instead.

This triplet can be carried on the IPDS Define Group Boundary (DGB)command that starts a group and is valid for all sheets in the group.

This triplet can also be carried on an Apply Finishing Operations (AFO)command for a single sheet operation.

XOA Discard Unstacked Pages

The XOA Discard Unstacked Pages (DUP) command deletes all buffered datafrom the printer storage, discards all printed but unstacked pages, andreturns the printer to home state.

Definition of the XOA Discard Unstacked Pages Data Fields

Bytes 0 through 1 of this data element contain the Order code field.This field has the hexadecimal value of F500, which indicates theDiscard Unstacked Pages (DUP) order code.

UP³I-Specific Exception IDs Added to IPDS

The printing device 106 of the exemplary embodiment monitors the statusof devices connected to the UP³I bus 110. Status data is reported backto the host/server via the exception handling defined by the IPDSprotocol but with exception IDs that have been added to the IPDSspecification to reflect UP³I equipment status. Further Informationconcerning IPDS exception handling is provided in the IPDSspecification. The added exception IDs for UP³I status data are definedbelow.

Exception: Intervention Required

-   Exception ID Hexadecimal Value: X‘407E . . . 00’-   Indicates: Intervention required on a UP³I-controlled device-   Action Code: X‘08’, X‘0A’, X‘1A’, or X‘22’-   Explanation: A pre-processing or post-processing device attached to    the printer has reported an intervention required condition. The    specific error is identified in the sense bytes 8-9. This exception    ID uses sense-byte format 8.-   Alternate Exception Action: None-   Page Continuation Action: None

Exception: Specification Check

-   Exception ID Hexadecimal Value: X‘027E . . . 00’-   Indicates: Invalid or unsupported parameter specification for a    UP³I-controlled device Action Code: X‘01’, X‘06’, or X‘09’-   Explanation: A specification error was detected for a UP³I    pre-processing or post-processing device. The specific error is    identified in the sense bytes 8-9.

The UP³I Finishing Operation (X‘8E) triplet is used to specify finishingoperations for UP³I pre-processing or post-processing devices attachedto the printer. This exception ID uses sense-byte format 8.

-   Alternate Exception Action: None-   Page Continuation Action: None

Exception: Conditions Requiring Host Notification

-   Exception ID Hexadecimal Value: X‘0109 . . . 00’-   Indicates: Supported finishing operations changed.-   Note: Use existing NACK-   Exception ID Hexadecimal Value: X‘017E . . . 00’-   Indicates: Condition requiring host notification on a    UP³I-controlled device-   Action Code: X‘09’, X‘1A’, or X‘1D’-   Explanation: A pre-processing or post-processing device attached to    the printer has reported a condition requiring host notification.    The specific error is identified in the sense bytes 8-9. This    exception ID uses sense-byte format 8.-   Alternate Exception Action: None-   Page Continuation Action: None

Exception: Equipment Check with Intervention Required

-   Exception ID Value: X‘507E . . . 00’-   Indicates: Intervention required because of an equipment check on a    UP³I-controlled device-   Action Code: X‘08’, X‘09’, X‘16’, or X‘22’-   Explanation: A pre-processing or post-processing device attached to    the printer has reported an equipment check error that is also an    intervention required condition. The specific error is identified in    the sense bytes 8-9. This exception ID uses sense-byte format 8.-   Alternate Exception Action: None-   Page Continuation Action: None

Exception: Equipment Check

-   Exception ID Value: X‘107E . . . 00’-   Indicates: Equipment check on a UP³I-controlled device.-   Action Code: X‘09’, X‘22’ or X‘23’-   Explanation: A pre-processing or post-processing device attached to    the printer has reported an equipment check error that can not be    corrected by an operator. The specific error is identified in the    sense bytes 8-9. This exception ID uses sense-byte format 8.-   Alternate Exception Action: None-   Page Continuation Action: None

Definition of Sense Byte Format 8

Sense Byte Format 8 is used by some of the above exceptions. Bytes 8-18of the format are defined by UP³I, all other bytes are part of IPDSexception reporting.

Bytes 0 and 1 of this format contain the Exception Class & Exception ID,which are bytes 1 and 2 of the 3-byte Error Code.

Byte 2 of this format contains the Action Code field, which also mayindicate that some counter adjustments are required. The counter values(RPC, CPC, JPC, OPC, SPC) represent IPDS-defined tracking points in thelogical paper path and are described in the IPDS Specification. Themeanings associated with the different hexadecimal values of this byteare defined as:

Value=01: Data stream exception.

-   -   Counter Adjustments: Normal IPDS handling

Value=06: Function no longer achievable

-   -   Counter Adjustments: No change

Value=08: Physical media jam

-   -   Counter Adjustments: RPC<-JPC        -   CPC<-JPC        -   OPC<-JPC        -   JPC no change        -   SPC<-JPC

Value=09: Data related print exceptions

Value=16: Hardware Related Print Exception

Value=1A: Re-drive buffered pages

Value=1D: Printer characteristics changed

Value=23: Temporary HW exception

-   -   Counter Adjustments for 09, 16, 1A, 1D, and 23:        -   RPC<-CPC        -   CPC no change        -   OPC no change        -   JPC no change        -   SPC no change

Value=0A: Pre/Post processor exception

-   -   Counter Adjustments: RPC<-JPC    -   Counter Adjustments: CPC<-JPC    -   Counter Adjustments: OPC<-JPC    -   Counter Adjustments: JPC no change    -   Counter Adjustments: SPC<-no change

Value=22: Printer inoperative. Counter Adjustments defined by theprinter.

Byte 3 of this format indicates Printer Dynamic Conditions.

Byte 4 contains hexadecimal value DE, and indicates a device error.

Byte 5 contains the value 08 which is the Format Identifier. This is theUP³I-specific sense data format.

Bytes 6 and 7 contain the value of the IPDS command ID for which theerror is being reported.

Bytes 8 and 9 contain a UP³I specific error code. This error code isdevice specific as is defined by the UP³I™ specification

Byte 10 contains the Paper Sequence ID of the Pre/Post processing devicewhich caused the exception.

Bytes 11 and 12 are set to zero and are reserved (for set errorrecovery).

Bytes 13 and 14 are set to zero and are reserved (for set errorrecovery).

Bytes 15 through 16 contain the ID of the active UP³I tupel.

Bytes 17 and 18 are set to 0000 and are reserved.

Byte 19 is set to 00 and is Byte 3 of the 3-byte error code.

Bytes 20 through 23 contain the Page Identifier.

IPDS Data Stream with UP³I Triplets

An exemplary IPDS data stream that includes UP³I Triplets is illustratedin FIG. 5. X‘8E’ triplets are initially specified on the MediumFinishing Control (MFC) structured field in the MO:DCA Form Definitionat print-job submission. The exemplary IPDS command flow 500 describes acomplete print package has three nesting levels or sub-portions definedby the IPDS commands XOH DGB and XOH SGO (Specify Group Operation),which are shown as “DGB” and “SGO” commands in the exemplary IPDScommand flow 500. In the exemplary embodiment, each time a new nestinglevel is defined, an XOH SGO command is specified.

The first package sub-portion is initiated by the first XOH SGO command502 that defines the level as X‘90’ and the operation to be X‘04’,“finishing operations.” The first package sub-portion is defined by afirst DGB command 504 and is terminated by a first DGB Terminate command508, both for level X‘90’ as defined by the first SGO command 502. Thefirst package sub-portion includes the entire print package, which arepages one through fifteen, in this example. The first DBG command 504includes a first finishing operation command 506 that specifies twofinishing operation triplets—a first specifying “Corner staple, Top-leftcorner” and another specifying “Punch.” These finishing operations willbe applied to all of the pages within the first package sub-portion. Thefinishing operation triplets used in the first DGB command 504 causesthe first package sub-portion, which is the entire document in thisexample, to be punched and stapled at the top left corner.

The second package sub-portion is initiated by the second SGO command510 that defines the level as X‘8E’ and the operation to be X‘04’,“finishing operations.” The second package sub-portion is defined by thesecond DGB command 512 and is terminated by the second DGB terminatecommand 514, both for level X‘8E’ as defined by the second SGO command510. The second package sub-portion in this example includes only partof the print package, i.e., page 2 through page 8. The second DGBcommand 512 includes a second finishing operation command 516 thatcontains one finishing operation triplet specifying “Fold, F8-2 4×1.”The finishing operation triplet within the second finishing operationcommand 516 of this example causes the pages within the second packagesub-portion to be folded using a z-fold.

The third package sub-portion is initiated by a third SGO command 520that defines the level as X‘8C’ and the operation to be X‘04’,“finishing operations.” The third package sub-portion is defined by athird DGB command 522 and is terminated by a third DGB terminate command524, both for level X‘8C’ as defined by the third SGO command 520. Thethird package sub-portion in this example includes only part of theprint package, i.e., page 4 through page 6. The third DGB command 522includes a third finishing operation command 526 that contains onefinishing operation triplet specifying “Cut, Perforation cut.” Thefinishing operation triplet within the third finishing operation command526 of this example causes the pages within the third packagesub-portion to be cut with a perforation cut.

Alternative Embodiments

The present invention can be realized in hardware, software, or acombination of hardware and software. Any kind of computer system—orother apparatus adapted for carrying out the methods described herein—issuited. A typical combination of hardware and software could be ageneral purpose computer system with a computer program that, whenloaded and executed, controls the computer system such that it carriesout the methods described herein.

The present invention can also be embedded in a computer programproduct, which comprises all the features enabling the implementation ofthe methods described herein, and which—when loaded in a computersystem—is able to carry out these methods. In the present context, a“computer program” includes any expression, in any language, code ornotation, of a set of instructions intended to cause a system having aninformation processing capability to perform a particular functioneither directly or after either or both of the following: a) conversionto another language, code, or notation; and b) reproduction in adifferent material form.

Each computer system may include one or more computers and a computerreadable medium that allows the computer to read data, instructions,messages, or message packets, and other computer readable informationfrom the computer readable medium. The computer readable medium mayinclude non-volatile memory such as ROM, Flash memory, a hard or floppydisk, a CD-ROM, or other permanent storage. Additionally, a computerreadable medium may include volatile storage such as RAM, buffers, cachememory, and network circuits. Furthermore, the computer readable mediummay include computer readable information in a transitory state mediumsuch as a network link and/or a network interface (including a wirednetwork or a wireless network) that allow a computer to read suchcomputer readable information.

While there has been illustrated and described what are presentlyconsidered to be the preferred embodiments of the present invention, itwill be understood by those skilled in the art that various othermodifications may be made, and equivalents may be substituted, withoutdeparting from the true scope of the present invention. Additionally,many modifications may be made to adapt a particular situation to theteachings of the present invention without departing from the centralinventive concept described herein. Furthermore, an embodiment of thepresent invention may not include all of the features described above.Therefore, it is intended that the present invention not be limited tothe particular embodiments disclosed, but that the invention include allembodiments falling within the scope of the appended claims.

1. A method of communicating processing data to ancillary printingprocessors, the method comprising the steps of: establishing a firstcommunications link from a data source to a printer, wherein the firstcommunications link carries printer control data in a first protocol,the first protocol defining at least one message containing finishingcommand data in at least one predetermined format, the at least onepredetermined format corresponding to at least one format of finishingcommand data contained within at least one message defined by a secondprotocol, the second protocol being different from the first protocol;communicating finishing command data for at least one ancillary printingprocessor from the data source to the printer in a first messageconforming to the first protocol, the finishing command data having aformat defined by the at least one predetermined format; generating, atthe printer, a second message conforming to the second protocol, thesecond message defined to contain the finishing command data in the atleast one predetermined format; and communicating the finishing commanddata in the at least one predetermined format between the printer andthe at least one ancillary printing processor in the second messageconforming to the second protocol over a second communications link,wherein the first protocol is Intelligent Printer Data Stream and thesecond protocol is Universal Printer Pre- and Post-Processing Interface,wherein the Intelligent Printer Data Stream defines at least one messagecomprising finishing command data in the at least one predeterminedformat, and wherein the at least one predetermined format comprises aformat for finishing command data that corresponds to a format offinishing command data within at least one message defined for theUniversal Printer Pre- and Post-Processing Interface.
 2. The methodaccording to claim 1, wherein the first communications link is abi-directional, point-to-point link between the data source and theprinter.
 3. The method according to claim 1, wherein the secondcommunications link comprises a Universal Printer Pre- andPost-Processing Interface data link that connects the printer and the atleast one ancillary printing processor.
 4. A method of communicatingprocessing data to ancillary printing processors, the method comprisingthe steps of: establishing a first communications link from a datasource to a printer, wherein the first communications link carriesprinter control data in a first protocol, the first protocol defining atleast one message containing finishing command data in at least onepredetermined format, the at least one predetermined formatcorresponding to at least one format of finishing command data containedwithin at least one message defined by a second protocol, the secondprotocol being different from the first protocol; communicatingfinishing command data for at least one ancillary printing processorfrom the data source to the printer in a first message conforming to thefirst protocol, the finishing command data having a format defined bythe at least one predetermined format; generating, at the printer, asecond message conforming to the second protocol, the second messagedefined to contain the finishing command data in the at least onepredetermined format; and communicating the finishing command data inthe at least one predetermined format between the printer and the atleast one ancillary printing processor in the second message conformingto the second protocol over a second communications link, wherein thefirst communications link communicates a status of the at least oneancillary printing processor that was communicated via the secondcommunications link, the second communications link communicating thestatus in a status message defined by the second protocol, the statusmessage defined to carry status data within at least one secondpredetermined format, the first protocol defining at least one secondstatus message containing status data in the at least one secondpredetermined data format, and the first communications linkcommunicating the status with the at least one second status messageaccording to the first protocol.
 5. The method according to claim 1,wherein the data contained within the printer control data and thefinishing command data are derived from a job ticket, and the format ofthe processing data within the job ticket conforms to the secondprotocol.
 6. The method according to claim 1, wherein the firstcommunications link communicates printer data and the secondcommunications link simultaneously communicates data for at least one ofa pre-processing device and a post-processing device.
 7. The methodaccording to claim 6, wherein the first communications link communicatesdata to a printing device and wherein the second communications linkcommunicates data to at least one of a pre-processing device and apost-processing device.
 8. The method according to claim 7, wherein thefirst communications link further communicates status data from aprinting device and the second communications link further communicatesstatus data from at least one of a pre-processing device and apost-processing device.
 9. A system for communicating processing data toancillary printing processors, the system comprising: a firstcommunications link from a data source to a printer, wherein the firstcommunications link carries printer control data in a first protocol andfinishing command data in a first message defined by the first protocol,the first protocol defining the first message to contain the finishingcommand data in at least one predetermined format, the at least onepredetermined format corresponding to at least one format of finishingcommand data contained within at least one message defined by a secondprotocol, the second protocol being different from the first protocol; amessage processor, within the printer, adapted to generate a secondmessage conforming to the second protocol, the second message beingdefined to contain the finishing command data in the at least onepredetermined format; a second communications link adapted to transmitthe second message according to the second protocol from the printer toat least one ancillary printing processor; and a host/server forgenerating printing and finishing data for transmission over the firstcommunications link and the second communications link, wherein thefirst protocol is the Intelligent Printer Data Stream and the secondprotocol is Universal Printer Pre- and Post-Processing Interface,wherein the Intelligent Printer Data Stream defines at least one messagecomprising finishing command data in the at least one predeterminedformat, and wherein the at least one predetermined format comprises aformat for the finishing command data that corresponds to a format offinishing command data within at least one message defined for theUniversal Printer Pre- and Post-Processing Interface.
 10. The systemaccording to claim 9, wherein the first communications link is abi-directional, point-to-point link between the data source and theprinter.
 11. The system according to claim 9, wherein the secondcommunications link comprise a Universal Printer Pre- andPost-Processing Interface data link that connects the printer and the atleast one ancillary printing processor.
 12. A system for communicatingprocessing data to ancillary printing processors, the system comprising:a first communications link from a data source to a printer wherein thefirst communications link carries printer control data in a firstprotocol and finishing command data in a first message defined by thefirst protocol, the first protocol defining the first message to containthe finishing command data in at least one redetermined format, the atleast one predetermined format corresponding to at least one format offinishing command data contained within at least one message defined bya second protocol, the second protocol being different from the firstprotocol; a message processor, within the printer, adapted to generate asecond message conforming to the second protocol the second messagebeing defined to contain the finishing command data in the at least onepredetermined format; a second communications link adapted to transmitthe second message according to the second protocol from the printer toat least one ancillary printing processor; and a host/server forgenerating printing and finishing data for transmission over the firstcommunications link and the second communications link, wherein thefirst communications link communicates a status of the at least oneancillary printing processor that was communicated via the secondcommunications link, the second communications link communicating thestatus in a status message defined by the second protocol, the statusmessage defined to carry status data within at least one secondpredetermined format, the first protocol defining at least one secondstatus message containing status data in the at least one secondpredetermined data format, and the first communications linkcommunicating the status with the at least one second status messageaccording to the first protocol.
 13. The system according to claim 9,wherein the first communications link communicates printer data and thesecond communications link simultaneously communicates data for at leastone of a pre-processing device and a post-processing device.
 14. Thesystem according to claim 13, wherein the first communications linkcommunicates data to a printing device and wherein the secondcommunications link communicates data to at least one of apre-processing device and a post-processing device.
 15. The systemaccording to claim 14, wherein the first communications link furthercommunicates status data from a printing device and the secondcommunications link further communicates status data from at least oneof a pre-processing device and a post-processing device.
 16. A computerreadable medium, comprising a computer program including computerinstructions for communicating processing data to ancillary printingprocessors, the computer instructions comprising instructions for:establishing a first communications link from a data source to aprinter, wherein the first communications link carries printer controldata in a first protocol, the first protocol defining at least onemessage containing finishing command data in at least one predeterminedformat, the at least one predetermined format corresponding to at leastone format of finishing command data contained within at least onemessage defined by a second protocol, the second protocol beingdifferent from the first protocol; communicating finishing command datafor at least one ancillary printing processor from the data source tothe printer in a first message conforming to the first protocol, thefinishing command data having a format defined by the at least onepredetermined format; generating, at the printer, a second messageconforming to the second protocol, the second message defined to containthe finishing command data in the at least one predetermined format; andcommunicating the finishing command data in the at least onepredetermined format between the printer and the at least one ancillaryprinting processor in the second message conforming to the secondprotocol over a second communications link, wherein the first protocolis Intelligent Printer Data Stream and the second protocol is UniversalPrinter Pre- and Post-Processing Interface, wherein the IntelligentPrinter Data Stream defines at least one message comprising data in theat least one predetermined format, and wherein the at least onepredetermined format comprises a format for the processing data thatcorresponds to a format of data within at least one message defined forthe Universal Printer Pre- and Post-Processing Interface.
 17. Thecomputer readable medium according to claim 16, wherein the firstcommunications link is a bi-directional, point-to-point link between thedata source and the printer.
 18. The computer readable medium accordingto claim 16, wherein the second communications link comprises aUniversal Printer Pre- and Post-Processing Interface data link thatconnects the printer and the at least one ancillary printing processor.19. A computer readable medium, comprising a computer program includingcomputer instructions for communicating processing data to ancillaryprinting processors, the computer instructions comprising instructionsfor: establishing a first communications link from a data source to aprinter, wherein the first communications link carries printer controldata in a first protocol, the first protocol defining at least onemessage containing finishing command data in at least one predeterminedformat, the at least one predetermined format corresponding to at leastone format of finishing command data contained within at least onemessage defined by a second protocol, the second protocol beingdifferent from the first protocol; communicating finishing command datafor at least one ancillary printing processor from the data source tothe printer in a first message conforming to the first protocol, thefinishing command data having a format defined by the at least onepredetermined format; generating, at the printer, a second messageconforming to the second protocol, the second message defined to containthe finishing command data in the at least one predetermined format; andcommunicating the finishing command data in the at least onepredetermined format between the printer and the at least one ancillaryprinting processor in the second message conforming to the secondprotocol over a second communications link, wherein the firstcommunications link communicates a status of the at least one ancillaryprinting processor that was communicated via the second communicationslink, the second communications link communicating the status in astatus message defined by the second protocol, the status messagedefined to carry status data within at least one second predeterminedformat, the first protocol defining at least one second status messagecontaining status data in the at least one second predetermined dataformat, and the first communications link communicating the status withthe at least one second status message according to the first protocol.20. The computer readable medium according to claim 16, wherein thefirst communications link communicates printer data and the secondcommunications link simultaneously communicates data for at least one ofa pre-processing device and a post-processing device.
 21. The computerreadable medium according to claim 20, wherein the first communicationslink communicates data to a printing device and wherein the secondcommunications link communicates data to at least one of apre-processing device and a post-processing device.
 22. The computerreadable medium according to claim 21, wherein the first communicationslink further communicates status data from a printing device and thesecond communications link further communicates status data from atleast one of a pre-processing device and a post-processing device.